package com.xxwy.lintcodes;

import com.xxwy.Twopoints;

import java.util.Arrays;

/**
 * @author xxwy
 * 删除排序数组中的重复数字 II
 * 如果可以允许出现两次重复将如何处理？
 * 样例
 * 给出数组A =[1,1,1,2,2,3]，你的函数应该返回长度5，此时A=[1,1,2,2,3]。
 */
@Twopoints
public class Num101 {

    public int removeDuplicates(int[] nums) {
        int n = nums.length;
        int index = 0;
        for (int i = 0;i<n;i++) {
            if (i > 0 && i<n-1 && nums[i] == nums[i-1] && nums[i] == nums[i+1]) {
                continue;
            } else {
                nums[index++] = nums[i];
            }
        }
        return index;
    }

    public static void main(String[] args) {
        int i = new Num101().removeDuplicates(new int[]{1, 1, 1, 2, 2});
        System.out.println(i);
    }
}
